/*
    * webpack.config.js  配置文件  作用指示webpack干那些活儿 运行时去加载配置  
    * 所有的构建工具都是 基于node平台的 采用common.js
 */
const {resolve} = require("path");   //node提供的(自带)  用来拼接绝对路径的方法 node的一个核心模块处理路径问题

module.exports = {     //module.exports...属于common.js的 去暴露一个对象
    //1 入口起点 以谁开始打包
    entry:"./src/index.js", 
    
    //2 输出 {}  打包后输出到哪里 是一个对象
    output:{
        //2.1 输出文件名
        filename:"built.js",
        //2.2 输出路径 绝对路径 避免出错 
        //__dirname nodejs的一个变量 代表当前文件目录绝对路径  呆会输出到build这 
        path: resolve(__dirname,"build")    
    },

    //3 loder的配置 在module里面去写详细的配置 

    module:{
        rules:[
            //详细的loader配置 配置那些东西 
            {
				test:/\.css$/,          //test指匹配那些文件  正则css
				use:[                   //use使用那些loder 进行处理的去  use数组中执行顺序从右至左 由下到上 一次执行 
                    "style-loader",     //创建style标签 将js中的样式资源插入去 添加到head中生效         //* 下载包  npm i css-loder style-loder -D
                    "css-loader"        //将css文件变成commonjs模块加载js 里面内容为字符串              //* 下载包
				]
            },
            {
                test:/\.less$/,
                use:[
                    "style-loader",
                    "css-loader",
                    "less-loader"     //less 转css文件 需要下载less-loader和less
				]
            }
        ]
    },

    //4 plugins 插件配置 
    plugins:[],

    //5 模式 只用两种 development productionc
    mode:"development"  // 开发模式  
}